System, method, and computer program product for the directing and distributing of media content

ABSTRACT

A system, method, and computer program product are provided for selecting media content to be streamed; selecting a distribution channel to direct the streaming of the media content; and distributing the media content to the distribution channel. Additional systems, methods, and computer program products are also presented.

RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/816,101, filed Mar. 11, 2020, which claims benefit of U.S.application Ser. No. 14/599,381, filed Jan. 16, 2015, and U.S.Provisional Application No. 61/928,328, filed Jan. 16, 2014, all ofwhich are herein incorporated by reference.

FIELD OF THE INVENTION

The present invention relates to directing and distributing of mediacontent, and more particularly, this invention relates to directing anddistributing of media content based on one or more permissions in anetwork system.

BACKGROUND

The distributing of media content to devices is commonly used. Forexample, a user may play a DVD disk which is displayed on a television,or a set-top box may be used to retrieve and display media content.However, modern distributing of media content lacks integration withother devices and/or systems (e.g. uniform integration of media contentacross multiple devices and between multiple devices, etc.).

There is thus a need for addressing these and/or other issues and voidsassociated with the prior art.

SUMMARY

Other aspects and advantages of the present invention will becomeapparent from the following detailed description, which, when taken inconjunction with the drawings, illustrate by way of example theprinciples of the invention.

A system, method, and computer program product are provided according toone embodiment. In use, the method includes selecting media content tobe streamed; selecting a distribution channel to direct the streaming ofthe media content; and distributing the media content to thedistribution channel.

Additional systems, methods, and computer program products are alsopresented.

BRIEF DESCRIPTION OF THE DRAWINGS

For a fuller understanding of the nature and advantages of the presentinvention, as well as the preferred mode of use, reference should bemade to the following detailed description read in conjunction with theaccompanying drawings.

FIG. 1 illustrates a network architecture, in accordance with onepossible embodiment.

FIG. 2 illustrates an exemplary system, in accordance with oneembodiment.

FIG. 3 illustrates a screensharing network architecture, in accordancewith one possible embodiment.

FIG. 4 shows a method for directing and distributing media content, inaccordance with one possible embodiment.

FIG. 5 shows an architecture for the directing and distributing of mediacontent, in accordance with one possible embodiment.

FIG. 6 shows a user interface for the distributing of media content, inaccordance with one possible embodiment.

FIG. 7 shows a user interface for the distributing and directing ofmedia content, in accordance with one possible embodiment.

FIG. 8 illustrates a vehicle communication system for distributing anddirecting of media content, in accordance with one possible embodiment.

FIG. 9 shows a user interface for distributing and directing mediacontent, in accordance with one possible embodiment.

FIG. 10 shows a user interface for distributing and directing mediacontent, in accordance with one possible embodiment.

FIG. 11 shows a system for distributing and directing media content, inaccordance with one possible embodiment.

FIG. 12 shows a user interface for distributing and directing mediacontent, in accordance with one possible embodiment.

FIG. 13 shows user interfaces for distributing and directing mediacontent, in accordance with one possible embodiment.

FIG. 14 shows user interfaces for distributing and directing mediacontent, in accordance with one possible embodiment.

FIG. 15 shows user interfaces for distributing and directing mediacontent, in accordance with one possible embodiment.

FIG. 16 shows user interfaces for distributing and directing mediacontent, in accordance with one possible embodiment.

DETAILED DESCRIPTION

The following description is made for the purpose of illustrating thegeneral principles of the present invention and is not meant to limitthe inventive concepts claimed herein. Further, particular featuresdescribed herein can be used in combination with other describedfeatures in each of the various possible combinations and permutations.

Unless otherwise specifically defined herein, all terms are to be giventheir broadest possible interpretation including meanings implied fromthe specification as well as meanings understood by those skilled in theart and/or as defined in dictionaries, treatises, etc.

It must also be noted that, as used in the specification and theappended claims, the singular forms “a,” “an” and “the” include pluralreferents unless otherwise specified.

The following description discloses several preferred embodiments ofdirecting and distributing media content and/or related systems andmethods.

FIG. 1 illustrates a network architecture 100, in accordance with onepossible embodiment. As shown, at least one network 102 is provided. Inthe context of the present network architecture 100, the network 102 maytake any form including, but not limited to a telecommunicationsnetwork, a local area network (LAN), a wireless network, a wide areanetwork (WAN) such as the Internet, peer-to-peer network, cable network,etc. While only one network is shown, it should be understood that twoor more similar or different networks 102 may be provided.

Coupled to the network 102 is a plurality of devices. For example, aserver computer 104 and an end user computer 106 may be coupled to thenetwork 102 for communication purposes. Such end user computer 106 mayinclude a desktop computer, lap-top computer, and/or any other type oflogic. Still yet, various other devices may be coupled to the network102 including a personal digital assistant (PDA) device 108, a mobilephone device 110, a television 112, etc.

FIG. 2 illustrates an exemplary system 200, in accordance with oneembodiment. As an option, the system 200 may be implemented in thecontext of any of the devices of the network architecture 100 of FIG. 1.Of course, the system 200 may be implemented in any desired environment.

As shown, a system 200 is provided including at least one centralprocessor 201 which is connected to a communication bus 202. The system200 also includes main memory 204 [e.g. random access memory (RAM),etc.]. The system 200 also includes a graphics processor 206 and adisplay 208.

The system 200 may also include a secondary storage 210. The secondarystorage 210 includes, for example, a hard disk drive and/or a removablestorage drive, representing a floppy disk drive, a magnetic tape drive,a compact disk drive, etc. The removable storage drive reads from and/orwrites to a removable storage unit in a well known manner.

Computer programs, or computer control logic algorithms, may be storedin the main memory 204 and/or the secondary storage 210. Such computerprograms, when executed, enable the system 200 to perform variousfunctions (to be set forth below, for example). Memory 204, storage 210and/or any other storage are possible examples of computer-readablemedia.

FIG. 3 illustrates a screensharing network system 300, in accordancewith one embodiment. As an option, the screensharing network system 300may be implemented in conjunction with features from any otherembodiment listed herein, such as those described with reference to theother FIGS. Of course, however, such screensharing network system 300and others presented herein may be used in various applications and/orin permutations which may or may not be specifically described in theillustrative embodiments listed herein. Further, the screensharingnetwork system 300 presented herein may be used in any desiredenvironment.

As shown, FIG. 3 illustrates a screensharing network architecture 300according to one embodiment. The screensharing network architecture 300,in accordance with one embodiment, may include a plurality of displaydevices 302. For example, in one embodiment, the display devices mayinclude a tablet, Bluetooth device, mobile device, or any other devicewhich includes a display. Of course, in other embodiments, thescreensharing network architecture 300 shown may include more or fewercomponents than those shown.

As shown, the screensharing network architecture includes a media playerdevice 308. For example, in one embodiment, the media player device mayinclude a DVD player, Blueray player, USB media player, and/or any otherplayer which can play media content. In other embodiments, thescreensharing network architecture may include a plurality of mediaplayer devices.

Additionally, the screensharing network architecture 300 includes aprocessor 312 which uses a data transmission medium, such as Bluetooth,Local Area Network (LAN), device sharing, and/or any other communicationprotocol and/or method, to allocate 314 a screen sharing of the media ofthe media player device 308 to one or more display devices 302. In oneembodiment, the media player device 308 includes a data receiving port306, which may receive a media, including, for example, DVDs, USB harddrive devices, Blueray disks, and/or any other unit which may includemedia content.

As shown, direct data lines 310 are included in the screensharingnetwork architecture and which may function as, for example, a displaydevice 302 charging cord, a data transmission medium, a hardwire forinteraction between display devices 302 and a media player device 308.Such direct data lines 310 may, in some embodiments, allow a user toparticipate in screensharing in situations including, for example, wherea display device is not wifi capable, requires frequent charging, doesnot have a wireless processor adequate enough to buffer and/or process awireless data allocation, and/or any other situation which may requireuse of a direct data line. In some embodiments, direct data lines mayinclude connector pin 316, which may be, for example, an 8 pin charger,16 pin charger, usb interface, and/or any other connector pin.

In other embodiments, direct data lines may be not be required. Forexample, a display device may be charged wirelessly, may have sufficientprocessors to buffer and/or process wireless data allocation, and/or mayhave one or more wireless protocols available (e.g. Bluetooth, BluetoothHigh Speed, Wifi-Direct, Wi-Fi, etc.). In such an embodiment, the datatransmission may occur wirelessly between display devices, mediadevices, and/or any other content playing and/or containing device.

In one embodiment, a user may switch from a wirelessly allocated 314media screen sharing to a direct data line 310 screen sharing on adisplay device 302. Furthermore, in other embodiments, a user may switchfrom a direct data line 310 screening to a wirelessly allocated 314media screensharing on a display device 302.

As shown, the screensharing network architecture 300 may include audiospeaker 304 which may be synced with the media player device 308. In oneembodiment, the audio speakers may be located in a car, airplane, train,presentation location, theater, on one or more devices, on one or moreportable audio devices such as headphones, and/or any other speakersystem. In another embodiment, one or more audio ports (not shown) maybe used to control the broadcasting of audio to the audio speaker 304.In another embodiment, the broadcasting of audio to the audio speaker304 may occur wirelessly and without any cables. Additionally, thescreensharing network architecture 300 may include more or fewercomponents than those shown, in various embodiments.

In one embodiment, a display device 302 may function as a controller forthe screensharing network architecture 300. For example, the displaydevice may be used to play, pause, fast forward, redirect to a specifiedtime, and/or control the media and/or the media player device, in anymanner. In other embodiments, any assigned display device 302 couldcontrol the screen sharing of the media player device 308 to displaydevices 302. In a further embodiment, while media is being played, adisplay device 302 may disable the screen sharing of the media playerdevice 308 and continue playing the media on a personal media playerdevice 308. In other embodiments, more than one display device 302 andmedia player device 308 may each display a separate and personal mediacontent. In other embodiments, any number of display devices 302 may beused to screenshare from a media player device 308. Still yet, inanother embodiment, more than one media player devices 308 may be eachused to screenshare a media content, and each media player device 308may control which display devices 302 the media content is sent to. Inanother embodiment, a user may select on the display device 302 whichincoming screenshare should be displayed. In a separate embodiment, ifno selection by the user is made, an automatic selection of ascreenshare stream may be displayed, based on a hierarchal ranking (e.g.master/slave relationships between the devices, etc.) between the mediastreams. In a further embodiment, the media player device 308 mayfunction as a display device 302.

FIG. 4 shows a method 400 for directing and distributing media streams,in accordance with one embodiment. As an option, the method 400 may beimplemented in the context of the details of any of the other Figures.Of course, however, the method 400 may be carried out in any desiredenvironment. Further, the aforementioned definitions may equally applyto the description below.

As shown, media content is selected to be streamed. See operation 402.Additionally, one or more distribution channels are selected to directthe streaming of the media content. See operation 404. Further, themedia content is distributed to the one or more distribution channels.See operation 404.

In the context of the present description, media content refers to anycontent which can be displayed. For example, in one embodiment, photos(e.g. JPEG, TIFF, BMP, etc.), music (e.g. .mp3, radio stations, etc.),video files (e.g. .mp4, .avi, .mov, DVD, Blueray disks, etc.), may bedisplayed. In another embodiment, media content may include interactivecontent. For example, a game may be played on one device with one ormore players, or may be played on a plurality of devices with one ormore players. As such, media content may refer to any type of contentwhich may be displayed on a device.

In one embodiment, the mobile content may be played and/or displayed onone or more devices, including mobile devices, built-in players (e.g.car systems, etc.), home entertainment systems, desktop computers,and/or any other device which may play and/or display the media content.In one embodiment, the mobile device may include any type of mobiledevice, including a cellular phone, a tablet computer, a handheldcomputer, a media device, a mobile device associated with a vehicle, aPDA, an e-reader, and/or any other type of mobile device capable ofdisplaying mobile content.

In another embodiment, in the case where the device is used to play themedia content, the device may be used to process (e.g. play the mediacontent using the applicable codec, etc.) the media content file. Insuch an embodiment, the processing by the device may be used to streamto one or more other devices (i.e. the processing of the media contentfile occurs only on one device, etc.). Additionally, once the processingof the media content file has taken place on one device, the otherdevices may receive the presentation of the processed media content file(e.g. only receive a streaming of the file rather than the need toprocess it, etc.). In one embodiment, if a media content file hasalready been processed, it may be reprocessed by another device based onone or more settings (e.g. optimize audio, resize the video, decreasethe frame rate, etc.).

In a separate embodiment, the device may offload some or all of theprocessing to other devices. For example, if media content was beingdisplayed simultaneously on three separate devices, each with adifferent size screen, each may access the media content to play thefile on the respective device. In such an embodiment, the processing bythe individual device may include optimizing the file to be optimallydisplayed on the device. In a separate embodiment, if media content wasbeing displayed simultaneously on three separate devices, each with adifferent size screen, just one device may be used to stream to allthree devices. For example, one device may process the media content(including optimizing the streaming to account for more than one displaysize) and then stream the modified processed media content to all of theother devices. In such an embodiment, the processing device may send outthe appropriately optimized media content to the appropriate device(e.g. based off of screen size request, etc.), or may send out a packageof multiple optimizations to be selected automatically by the device orby the user of the device (e.g. select HD rather than SD quality, etc.).

Still yet, in another embodiment, the media content may not be stored onthe device (e.g. stored in the cloud, on another device, onexternal/network drive, etc.). In such an embodiment, the processing mayoccur at least in part on the processing device. For example, in oneembodiment, the processing device may access the media content andprocess it in parts. In some embodiments, the processing may occur inset partitions or sections, based off of a storage amount (e.g. every100 mb, etc.), time (e.g. every 25 min, etc.), and/or any other feature.The processing device may process each set section and distribute theprocessed section to other devices (e.g. distribute device specific andoptimized format, distribute package of optimized formats, etc.).

Further, in a separate embodiment processing of the media content mayoccur on more than one device. For example, any device capable ofprocessing the media content may optimize the content for the device.The media content file and/or data therefore may be accessedsimultaneously by more than one device, processed by each device, andthen displayed on each device in an optimized manner. In the context ofthe present description, processing the media content includes renderingthe media content in an optimized manner for the device display.

In this manner, media content may be retrieved by one or more devices.Additionally, media content may be streamed from a remote source to oneor more devices, streamed from a local source (e.g. device, etc.) to oneor more devices, and/or streamed from any other location to a deviceand/or display. Still yet, in another embodiment, if media is beingprocessed by individual devices, then part of the source media contentfile may be saved temporarily on the device. For example, in oneembodiment, a device buffer may be used to store part of the sourcemedia content, prior to the processing and/or displaying of the mediacontent.

In a further embodiment, the device may be used to display the mediacontent. For example, in various embodiments, the device may beincapable of processing the media content (e.g. the device functions maybe simply a screen and/or display, device cannot render and/or optimizemedia content, etc.). In such an embodiment, the device may functionsolely to display media content, as streamed by another device. Inanother embodiment, the device may be capable of processing the mediacontent, but may be used also solely to display media content, asstreamed by another device. In this manner, media content may bedisplayed on one or more devices.

Additionally, in the context of the present description, a distributionchannel refers to any network and/or device which is used to display themedia content. For example, in one embodiment, the distribution channelnetwork may include a wireless system (e.g. WLAN, Wi-Fi, Wi-Fi direct,Bluetooth, etc.), a wired system (e.g. LAN, Ethernet, dock connector,etc.), and/or any other network system which may be used to stream themedia content. In a separate embodiment, a distribution channel devicemay include any device which may be used to display the media content.As such, a distribution channel may refer to the protocol used totransmit the media content, or may refer to the endpoint of where themedia content is displayed. Of course, in other embodiments,distribution channel may also include devices located and/or connectedvia the cloud. In this manner, any device which may have access toand/or receive functionality from a network and/or device associatedwith the media content may be included as being part of the distributionchannel and/or a distribution channel device.

In one embodiment, a user may select the media content to be streamed.The user may then select a network to stream the media content. In oneembodiment, the media content to be streamed may be initially viewed viaa cloud based connection, whereas one a media content is selected to bestreamed, the system may prompt the user to select the network (e.g. uselocal WiFi connection, use a wired connection, use data connection,etc.) to be used for streaming to the device. Additionally, in oneembodiment, selecting a network may also include setting a qualityassociated with the media content. For example, selecting a WiFiconnection may display the media content at a higher resolution, whereasselecting a data connection may display the media content at a lowerresolution to preserve data.

In one embodiment, once a media content is selected to be streamed,other devices on the network may select to view the media content. Inthis manner, users may have access to view media content based onanother user's action. As an example, a first user may not have accessto media content X. However, a second user may have access to mediacontent X and begin streaming the content. In one embodiment, based onthe second user's access to media content X, the first user may requestaccess to media content X through the second user's access. In anotherembodiment, if the second user was connected to a local connection (e.g.WiFi, etc.), and selected to stream the media content to the seconduser's device, streaming using the network may cause such a stream to bemade available to pre-approved (or public) users on the WiFi networkconnection as well.

In another embodiment, a user may select the media content to bestreamed, and then select individual devices (i.e. the endpoints, etc.)to which the media content should be streamed. In a separate embodiment,the user may select the media content to be streamed, select the networkto stream, and then select the individual devices on the network towhich the media content should be streamed.

In one embodiment, the media content may be pushed from a master deviceto one or more other devices (e.g. slave devices, etc.). For example, inone embodiment, devices may be arranged via a hierarchy of permissionsand/or settings, including, for example, detecting whether devices havebeen previously detected and/or categorized (i.e. if unknown, the devicemay assume a slave relationship unless changed by an administrator ofthe network, etc.), detecting whether the devices belong topreconfigured user (e.g. if user is parent or child, permissions will beautomatically applied, etc.), detecting metadata associated with thedevice (e.g. device id, active user, etc.), and/or detecting any otherinformation which may influence whether the device should be classifiedas a master or slave device.

Additionally, in various embodiments, the allocation of hierarchalrelationships may be determined and applied automatically. For example,the network system may be preconfigured to always designate user X1 asthe master over any other device in NETWORK1. In various embodiments,the network system may be configured based off of some protocol and/orconnection (e.g. WiFi, Bluetooth, WiFi Direct, cable connection, etc.).If X1 is predesignated as the master over NETWORK1, then no other deviceand/or user may function as a master in NETWORK1. In one embodiment, ifa non X1 device is detected, it may be automatically designated as aslave device to a X1 device on the network. In another embodiment, if anon X1 device is detected, a user interface may be presented on the X1device requesting whether the non X1 device should be added in a slaverelationship to the X1 device. In a separate embodiment, if a non X1device is detected, a user interface may be presented on the non X1device, requested permission to be controlled by the X1 device. In suchan embodiment, limits may be placed on the control by the X1 device. Forexample, the X1 device may have permission to display media content onthe non X1 device. However, the X1 device may be prevented and/orlimited from accessing content on the non X1 device, from alteringinformation on the non X1 device, and/or using the non X1 device in anyother manner.

Of course, in other embodiments, the non X1 device may be configuredsuch that the X1 device may have greater permissions and/or control ofnon X1 devices, including detecting and fetching media content from oneor more non X1 devices, processing such media content, streaming suchmedia content to one or more other devices (e.g. or displays, etc.),and/or using the non X1 devices in any other manner.

In one embodiment, if the detected non X1 device is identified for afirst time, setup (e.g. pairing process, network identification, etc.)may include establishing permissions on the network (e.g. the ability ofthe master device to control and/or access content on the slave device,etc.). In subsequent pairings, the network may remember prior pairingsto facilitate identification and/or distribution of content.

In another embodiment, a set of given permissions may have beenassociated with device XA1. At a later time, a master device may requestadditional permissions from the slave device (e.g. ability to accesscontent, etc.). Or, in another embodiment, the slave device may grantgreater access (e.g. allow access to files/folders, increase permissionlevel for the associated master device, etc.) to the master device.Further yet, in another embodiment, the slave device may push content tothe master device. In such a situation, the content received may firstbe sent as a request to the master device. If such a request is granted(e.g. based off of automatic settings, based off of user input, etc.),then the content from the slave device may be pushed to the masterdevice.

In one embodiment, pushing content from a slave device to a masterdevice may include transferring media content from a slave device to amaster device. In this manner, the master device may then process anddistribute the media content. In other embodiments, the master devicemay grant permissions (e.g. temporary permissions, permanentpermissions, etc.) to allow the slave device to function in such amanner that the slave device can distribute the media content to otherdevices and/or displays. In this manner, the master device can controlwhich slave device has permission to direct and distribute the mediacontent.

In another embodiment, if the slave device has permission to distributethe media content, the slave device may, like the master device, processand then distribute the media content, distribute a package of optimizedmedia content formats, and/or distribute the media content in any othermanner.

Still yet, in one embodiment, the slave device may include media contentstored not on the slave device (e.g. in the cloud, on an external drive,etc.). In such a scenario, the slave device may distribute the mediacontent to other devices, in a manner consistent with how the masterdevice would distribute the content (e.g. process the media content andthen distribute, have each device process the content individually,etc.). In this manner, the slave device may function as a pseudo-masterdevice, with enhanced permissions, but still under the control of themaster device.

In some embodiments, more than one master device may exist. For example,in one embodiment, a mobile device may be associated with the masteruser and predesignated as a master device. Additionally, a carinfotainment system may be predesignated as a master device. In such ascenario, both the car infotainment system and the mobile device mayboth function as master devices, including equal ability to control allslave devices, ability to control the distribution of media content,and/or any other control of the system.

In one embodiment, if more than one device is designated as a masterdevice, a hierarchy of master devices may additionally be specified bythe user. For example, in the case where two mobile devices and a carinfotainment system have been designated as master devices, the carinfotainment system may be designated as the first master, and the othermaster devices may be designated below the infotainment device.

In other embodiments, the master device may be temporarily revokedand/or suspended. For example, in one embodiment, if media content isbeing controlled by one device (e.g. the setup and distribution occurredthrough one master device, etc.), then other master devices may bedisabled from controlling the media content until either the processingmaster device has finished displaying the media content, or the masterdevice has transferred control of the media content to another masterdevice (or to any other device) designated by the processing masterdevice.

In another embodiment, the hierarchy of master devices may be based onthe time at which the master device is registered on a network. Forexample, in one embodiment, a set location may have a designated network(e.g. wired system, wireless system, etc.) to which devices and displaysmay be connected. As master devices log on to the network, the orderwill be indicative of the master hierarchy (i.e. the first registeredmaster device will be the control master, etc.).

In a further embodiment, the hierarchy of master devices may be based ondevice-to-device integration. For example, in one embodiment, a devicemay be designated as a central device. As master devices register tothis central device, the order in which they register may determine themaster hierarchy (i.e. the first registered master device will be thecontrol master, etc.). In another embodiment, the central device may bea master device, or may be slave device.

In one embodiment, the slave device's permissions may be based oncontext. For example, in some embodiments, the slave device may havepermission to stream video content to other devices and/or displays.However, the same slave device may not have permission to stream gamecontent and/or other interactive material. In other embodiments, thecontext may be dependent on the content type (e.g. video, photos, music,games, etc.), geographic (e.g. slave device has increased permissionsbased on geography bounds, etc.), time (e.g. after being connected forxx minutes permissions are increased, etc.), frequency (e.g. after beingconnected xx number of times permissions are increased, etc.), user type(e.g. adult, child, student, teacher, etc.), group (e.g. marketing,advertising, managerial, etc.), position (e.g. manager, administrator,etc.), and/or any other form of data which may be used to determine thecontext.

In some embodiments, the master device may be constant. For example, apreviously master-designated device may remain a master device forfuture interactions. Or, in another embodiment, a central device mayalways assign the permissions to the same device.

In other embodiments, the master device may not be constant. Forexample, a central hub may determine the master device based off ofcontext, including, in one embodiment, granting master control to thedevice associated with the highest ranking individual. As such, thedesignation of master device may change based on who is connected to thenetwork system (e.g. wired network, wireless network, device-to-deviceintegration, central device integration, etc.).

As an example, a physical room may have multiple displays for displayingpresentations. As employees work in the room, the employee with thehighest designated position may have control of the slave devices in theroom (e.g. the displays, etc.). In some embodiments, other devices inthe room (e.g. personal mobile devices associated with otherindividuals, etc.) may be designated as slave devices (e.g. users acceptslave designation while they are located in the room, etc.). However, ifthe president of the company enters the room, the control of thedisplays and of the slave devices may be automatically transferred to adevice associated with the president. In other embodiments, the transfermay be manual, or may require some user interaction (e.g. displaying onthe president's mobile device “Would you like to control this room?,”etc.). In this manner, the master device may change based off of thecontext of the participants and the devices.

In another example, a car may have multiple displays and interactivedevices. In some embodiments, at least some of these devices may bepermanently integrated into the car system (e.g. incorporated intoseat-backs, integrated into car deck, etc.). In other embodiments, atleast some of these devices may be mobile (e.g. may be removed from thecar, etc.). In such a situation, a child may be using a tablet and,based on the designation of being a child user, the tablet will be aslave device. However, if the tablet is passed to another user (e.g. aparent, an administrator), the user may login with credentials and thedevice may be automatically switched to functioning as a master device.In this manner, the master device may be based off of the usercontrolling the device.

In other embodiments, at least some elements and/or devices may remainconstant while other devices and/or designations change. For example, inone embodiment, a central device may be designated as a constant masterdevice. Other master devices (e.g. mobile devices, etc.) may continuallychange as the users of the device change. However, the central devicemay remain as a constant master device on the network system.

As an example, a classroom may include a central device which isassociated with the classroom (e.g. based off of geographic location,etc.). As students enter and exit, the number of slave devices may becontinually changing. Additionally, while a teacher is in the room, oneor more devices associated with the teacher may be designated as masterdevices. However, as other users enter the room (e.g. administrators,etc.), the controlling master device may change (e.g. administrator mayhave ability to take control of the devices in the classroom, etc.).However, amidst the changing devices and/or permission levels, theclassroom central device may continually function as a master device.For example, in one embodiment, the classroom may only have slavedevices and the central master device. In such an embodiment, thecentral master device can function as any other master device.Additionally, even if other master devices were also associated with thenetwork system, the central master device may still function as thecontrolling master device. Or, in other embodiments, the central devicemay display and/or control the hierarchy of master devices on thenetwork system. In this manner, a central device may remain constantwhile other slave and master devices may change.

In one embodiment, a central device may control the distributionchannels. For example, the central device may dictate that media contentbe streamed via a wired network, a wireless network, and/or any otherconnection or protocol. In other embodiments, the central device maydictate that media content be streamed directly to individual devices,and may manage all connected devices (e.g. maintain slave/masterrelationships, etc.).

In some embodiments, interaction with the network system may require thedevice to be present (e.g. within the range of the wireless networksystem, within range of the wired network system, within range of deviceto device communication, etc.). In other embodiments, interaction withthe network system may occur remotely. For example, in one embodiment, amaster device may remain a master device (over all other slave devicesin the network system) even when not present within the actual networksystem.

As an example, a bus may be managed by a corporate entity. The corporateentity may include a master device for use in the bus to control allother devices and/or displays. The bus may also include a central devicefor communicating with the master device (associated with the corporateentity) and any other device detected on the bus. When the master deviceis away from the network system, the master device may still connect tothe network system through an internet connection and/or any otherremote connection interface system. The master device may contact thecentral device to administer to requests by other devices on the networksystem. Or, the master device may control, in some manner, what is beingdisplayed on the network system. For example, in one embodiment, the bussystem may be associated with a tour, and the central device in eachnetwork system (i.e. in each bus, etc.) may be controlled by one globalmaster device. In this manner, the company may retain control indirecting and distributing content.

Additionally, in another embodiment, an additional benefit of such aconfiguration is that real-time updates to the system can be appliedand/or controlled. For example, in one embodiment, a system of pods orshuttles may autonomously transport individuals to and from a location.Having the capability of tailoring the content displayed for each groupof passengers may allow greater personalization. As one example, a groupof tourists taking a shuttle may not comprehend what is being said onthe radio. The network system may detect one or more devices whosepreferred language is not English. The network system may communicatethis back to the central device and/or the master device, and the masterdevice or central device (if the central device is functioning as amaster device) may change what is being displayed and/or presented sothat it is in the tourist's preferred language.

As another example, in one embodiment, a group of children may havecontent presented to them which would be different from contentpresented to adults. As such, advertisements and/or media may betailored based on the context of those individuals and/or devicesconnected to the network system.

More illustrative information will now be set forth regarding variousoptional architectures and uses in which the foregoing method may or maynot be implemented, per the desires of the user. It should be stronglynoted that the following information is set forth for illustrativepurposes and should not be construed as limiting in any manner. Any ofthe following features may be optionally incorporated with or withoutthe exclusion of other features described.

FIG. 5 shows an architecture 500 for the directing and distributing ofmedia content, in accordance with one embodiment. As an option, thearchitecture 500 may be implemented in the context of the details of anyof the other Figures. Of course, however, the architecture 500 may becarried out in any desired environment. Further, the aforementioneddefinitions may equally apply to the description below.

As shown, the architecture 500 includes one or more media player devices502, one or more audio speakers 504, a wireless network system 506, oneor more signal repeaters 508, one or more connector pins 510, one ormore display devices 512, and one or more direct data lines 514. Ofcourse, in other embodiments, fewer or more features and/or items thanthose shown in 500 may be included.

In one embodiment, the architecture may function only as a wirelessnetwork system. For example, in various embodiments, the media playerdevices, audio speakers, and display devices may communicate via awireless protocol (e.g. wifi, wifi direct, Bluetooth, etc.). In oneembodiment, a connector pin and/or dock connector may allow the deviceto communicate wireless with the wireless network system. For example,in one embodiment, a device may not be wireless capable, but connectingto a connector pin and/or dock connector may provide the wirelessresources to then communicate wirelessly.

Still yet, in one embodiment, the wireless network system may includeone or more wireless networks. For example, the architecture may allowthe devices to communicate device-to-device (e.g. Bluetooth, etc.) whilestill allowing each device to maintain a separate data connection (e.g.cellular network access, etc.). In such an embodiment, each device'snetwork connectivity may contribute to the entire architecture's overalldata connectivity. In one embodiment, the architecture may leverage eachdevice's individual data connectivity to efficiently allocate, request,and retrieve content media. As an example, in one embodiment, the masterdevice may detect a video associated with a slave device. The slavedevice may not have the video, however, stored on the actual device(i.e. the video may be stored in the cloud, etc.). The master device maybegin to retrieve the video via the slave device and then broadcast itto the other display and media player devices. In such an embodiment,therefore, the slave device is used to retrieve the media content, andthen send the media content to the master device for distribution. Inanother embodiment, the master device may distribute the data requestamong more than one data connected devices. For example, in oneembodiment, a slave device may be associated with a video stored in thecloud. The master device may request more than one device (in additionto, or rather than, the host slave device) to retrieve one or more partsof the video, process the one or more parts, and then distribute the oneor more parts to other display and media player devices. In thisembodiment, the slave devices may be used to leverage each of its owndata connection to provide a better (e.g. higher bit rate, higherquality, etc.) to the presentation of the media content.

In a separate embodiment, a master device may direct other slave devicesto fetch and retrieve individual media content. Once retrieval begins,the master device may direct the presentation of the media content. Forexample, in one embodiment, the master device may temporarily grant aslave device the ability to stream the retrieved media content to theother master and slave devices and displays in the network system. Oncethe slave device has finished, the master device may revoke the abilityand transfer such an ability to another slave device for presentation ofthe next media content, and so on. In this manner, the master device maydirect the presentation of media content, while leveraging a networkdata connection for each device.

In another embodiment, the architecture may function only as a wirednetwork system. In this system, the network system would be function asa closed system (e.g. no data connection, etc.). In one embodiment, thepresentation of media content would be limited to that which is alreadystored on the devices connected to the network system. In such anembodiment, the master device may grant a slave device temporarily theability to stream the media content to other devices connected to thenetwork system. In a separate embodiment, the slave device may streamthe media content directly to the master device, which may thendistribute it to the other devices and/or displays on the networksystem. Still yet, in another embodiment, the master device may directother slave devices to retrieve at least part of the media content froma particular slave device. Once retrieved, the individual slave devicesmay process (e.g. render the video and optimize it for various screensizes, etc.) and then stream the content when needed to the otherdevices or displays on the network system.

In one embodiment, the wired system may include dock connectors, pinconnectors, Ethernet connections, and/or any other types of connectionsto join the devices and/or displays together to create a wired networksystem.

Further yet, the architecture may function as a joint wireless and/orwired system. In such an embodiment, the network system may incorporateaspects of wired connections and wireless connections. For example, inone embodiment, one or more of the devices may be connected to a wirednetwork system. Additionally, one or more other devices may be connectedwirelessly to the same network system (e.g. through WiFi, Bluetooth,etc.). In other embodiments, the devices may create a meshdevice-to-device wireless system (e.g. Bluetooth mesh networking system,etc.).

In some embodiments, when the devices are connected to, for example, awireless network system, they may still have access to a cellular dataconnection. In other embodiments, the devices may lose a cellular dataconnection once they connect to a wireless network system. As such, topreserve the device's ability to utilize the cellular data connection,the devices may organize into a mesh topology (e.g. Bluetooth meshnetwork, etc.) where the master device can either connect individuallyto each slave device, or each slave device may simply connect to itsnearest device neighbor and forward on requests and/or media content. Inthis manner, aspects of both a wired network topology, a wirelessnetwork topology, and a device-to-device network topology may beintegrated into one cohesive network system.

In one embodiment, a cohesive network system may allow for higheroverall bit rates (e.g. aggregate data connections, etc.), redundancy ofrequests (e.g. each request is sent through two devices to minimizedropped packets and/or lower quality, etc.), and/or any other networkfeature to effectively present the requested media content.

In another embodiment, the network system may be connected to a globalnetwork drive for use by each of the connected devices. For example, inone embodiment, the network system may include a network storage drive.Each device may have access to this drive, and when requests are sent bythe master device to the individual slave devices, the requested contentmay be provided and sent directly to the central network drive. In someembodiments, the master device or the central device may functionsimultaneously as a network drive. However, in some embodiments, tominimize network bottlenecks (e.g. information and requests are allfiltered through the master device, etc.), a separate network drive withits own network connectivity (e.g. wired, wireless, etc.) may beprovided.

FIG. 6 shows a user interface 600 for the distributing of media content,in accordance with one possible embodiment. As an option, the userinterface 600 may be implemented in the context of the details of any ofthe foregoing Figures. Of course, however, the method 600 may be carriedout in any desired environment. Further, the aforementioned definitionsmay equally apply to the description below.

As shown, a user interface may include a display 602, and a prompt 604to join a network. In one embodiment, the user interface may beautomatically displayed on the device and/or display when the network isdetected. For example, a mobile device may come within range of thenetwork and thereby detect the network. In other embodiments, the devicemay not be capable of detecting a network until a network card (e.g.WiFi, WLAN, LAN, etc.) is activated. However, in some embodiments, thedevice may be capable of sensing one or more networks even when anetwork card is deactivated. For example, in one embodiment, the devicemay sense a network based off of a device-to-device request (e.g. pingrequest to join network, etc.).

Still yet, network activation may be based off of the context of thedevice. For example, in one embodiment, if it is sensed that the deviceis moving (e.g. at a threshold rate, etc.), then the device mayrecognize that it is traveling in a car and automatically activate theWiFi to interact with the car network system. Of course, in otherembodiments, the user may join any network system manually if desired(e.g. configure settings to not take automatic actions, etc.). In someembodiments, the context (e.g. of determining whether to activatenetwork connectivity, etc.) may be based on the time of day (e.g. nighttime, day time, etc.), location (e.g. GPS signal location, etc.), speed(e.g. >15 mph, etc.), message (e.g. text sent from central device to thedevice requesting the device to join the network, etc.), email message(e.g. email sent from central device to the device requesting the deviceto join the network, etc.), presence of other devices (e.g. device mayrecognize based on device id, user id what is near, etc.), altitude(e.g. 10,000 ft, etc.), acceleration (e.g. m/s{circumflex over ( )}2,etc.), gyroscope, and/or any other sensor which may provide contextualinformation.

As shown, media content 606 may be displayed on the device.Additionally, a request 608 to access media content may be displayed.

In one embodiment, once a user has accepted to join a network system(e.g. wireless network, wired network, device-to-device integration,etc.), then the master device on the network system may request one ormore permissions. For example, the master device may request permissionto access to the media content on the device, to control the device'sdisplay, to access and/or use the device's data connection, to accessthe email and/or other messages on the device, to access and/or use oneor more sensors on the device (e.g. accelerometer, etc.), to shareinformation about the device (e.g. with others on the network, etc.),and/or any other permission which may influence interaction with themaster device and any other device on the network system.

In some embodiments, the permissions granted to the master device(and/or any other device) may be temporary or permanent, as desired bythe user. For example, in one embodiment, the user may desire to grantpermanent access to the master device to access media content. However,the user may not grant permanent access to the master device to controlthe device display. In such an embodiment, therefore, the user maymanually grant the master device access to control the device display asdesired (e.g. change configuration in network settings, etc.). Or, inanother embodiment, when streaming media content, the master device mayrequest access to display the media content on the device, whereupon theuser may grant temporary access for the master device to display mediacontent on the device.

Of course, in various embodiments, the user may retain full control ofpermissions, control, access, and/or configuration of settings relatingto the network system and/or any other device on the network system.

In one embodiment, any permission and/or setting set by the user may besaved for the next time the user and/or the device logs into the networksystem. In such an embodiment, the device may not need to grantpermissions to the device and/or network system, as such requests willhave been already granted or denied based off of prior selections.

In another embodiment, media content can be played on a user's device.The user may wish to share the content with other users on the networksystem and may send a request to the master device for distribution. Therequest may state “Device X requests to share “MEDIA CONTENT” with usersof the network system.” The master device may automatically grant ordeny the request (e.g. based off of prior history, based off ofpredefined settings, etc.), or may require a user response beforeproceeding.

In a separate embodiment, the media content may be streamed from auser's device directly to another slave device. In some embodiments,streaming from one slave device to another slave device may require thefirst slave device requesting permission through the master device tostream to the slave device. In this manner, the master device may retaincontrol of what is being displayed on each device. In anotherembodiment, however, the first slave device may have the ability toselect which device it would like to stream to. In this embodiment, theuser may select a second slave device, select to stream to the secondslave device, and send the request directly to the second slave device.As such, depending on how the network system is configured, slavedevices may communicate directly with each other, or may be required togo through the master device for communication.

Additionally, in one embodiment, if media content is being streamed fromone device to another, the second device may merely see the mediacontent as it is currently being displayed on the first device. In otherembodiments, however, once a request to share media content has beensent and accepted, the second device may have control of the mediacontent relative to the second device. For example, rather than merelywatching the media content as controlled by the first device, the seconddevice may wish to pause, stop, fast-forward, and/or take any otheraction to control the media content, without disrupting what is beingdisplayed on the first device. In this embodiment, therefore, the firstdevice is acting as a streaming server to the second device, where thesecond device has the ability to control in some part the presentationof the media content on the second device.

In one embodiment, the user interface may be displayed on a mobiledevice (e.g. phone, tablet, etc.), or on a fixed device (e.g. mounteddevice, etc.). Integration with other devices may occur through thenetwork system. In various embodiments, the network system may belocated in a car, on a bus, in an airplane, in a movie theater, in aclassroom, on a street, and/or any other locations where devices mayinteract in some manner.

As an example, an airplane typically has many types of devices alreadypresent in the aircraft. In one embodiment, the devices may all be underthe control and/or direction of a master device. However, passengersfrequently bring one or more devices with them on the aircraft. In suchan embodiment, each individual device may communicate with a seatdisplay to integrate content associated with the user. For example, theuser's personal devices may include movies, music, books, and/or anyother media content. The seat where the user is located may include adisplay, a game console, and/or any other interactive elements. In thisembodiment, a separate network system may be established between theuser's personal devices and the resources located at the seat. In thismanner, the user can use the larger screen associated with the seat forthe purpose of viewing media stored on one or more personal devices.

In one embodiment, an airline may have a central device used formanaging and/or distributing media content. For example, in oneembodiment, each passenger may have their own device, but resources(e.g. access to a network connection, access to videos/movies, etc.) onthe airline may be granted to each individual passenger. Additionally,in one embodiment, if individual devices have permission to shareresources (e.g. network connection, access to videos/movies, etc.), suchresources may be potentially shared with the central device and/or otherdevices associated with individuals.

In another embodiment, one or more network systems can be createdbetween multiple users and/or groups. In this embodiment, resources fromone user and/or group may be shared with one or more other individualsand/or groups. For example, in one embodiment, a first user may havedownloaded on a personal tablet mobile device a gaming application.Using the controls and display associated with the seat, the user mayaccess the gaming application on the tablet device via the media deviceassociated with the seat. In a further embodiment, the user may sharethe gaming application to be played amongst more than one individual. Inthis embodiment, therefore, the tablet may stream the gaming content(e.g. including sending out graphical information and receiving commandsfrom each user, etc.) such that each individual user may interact withtheir individual seat display device and access gaming resourcesassociated with the user's personal tablet. As such, a gamingapplication originally stored and used on just one tablet may beaccessed via a second device (e.g. associated with the seat, etc.), andfurther accessed and/or shared with other individuals, their personaldevices, as well as devices associated with their seat.

Still yet, in another embodiment, the media content to be distributedmay be simply what is being displayed on a device (e.g. a screensharefunctionality, etc.). In this embodiment, the screen of one or moredevices may be shared simultaneously. For example, in one embodiment, amaster device may be giving a presentation. During the presentation, oneor more slave devices may have other information which is relevant tothe presentation which may be displayed simultaneously with thepresentation from the master device. In various embodiments, theadditional screens may be displayed as popup windows, an overlay on topof the main page, a side-by-side configuration, or any otherconfiguration where one or more screens may be displayed simultaneously.

In another embodiment, one or more screens may be selected to be viewed.For example, a user may be watching a movie on a tablet computer. Arequest to join a game based on another user's tablet may be receivedand accepted. While still watching the video, the user may display nextto the video a game associated with the tablet hosting the game. In thismanner, the user may still watch the video but interact with anotheruser/tablet at the same time.

Further still, in one embodiment, multiple screenshares may besimultaneously broadcasted. For example, in one embodiment, a device onthe network system may browse through one or more available screensharesto select which one should be viewed. In this embodiment, the availablescreenshares may function, therefore, as available channels to be viewedon the network system, where each channel displays media content or thescreen of the associated device. The user of the device may decide whichchannel to be selected and viewed.

FIG. 7 shows a user interface 700 for the distributing and directing ofmedia content, in accordance with one embodiment. As an option, the userinterface 700 may be implemented in the context of the details of any ofthe foregoing Figures. Of course, however, the user interface 700 may becarried out in any desired environment. Further, the aforementioneddefinitions may equally apply to the description below.

As shown, the user interface 700 may include a title bar 702, a settingsmenu 704, a content submenu 706, a people/devices submenu 708, a networksubmenu 710, and a current status bar 712. In various embodiments, theuser interface may have more or less than that which is displayed. Forexample, in other embodiments, the user interface may include submenusrelating to content optimization (e.g. preferred display size, outputsizes, etc.), remote configuration (e.g. ability for remote devices tocontrol the central device, etc.), parental settings (e.g. restrict whatchildren are able to do on the network, etc.), administrator settings(e.g. restrict what any entity is able to do on the network, etc.), oneor more video content applications (e.g. Netflix, Amazon Prime, Hulu,etc.), one or more music content applications (e.g. Pandora, Spotify,Google Music, etc.), one or more photo content applications (e.g.Flickr, Instagram, etc.), one or more social media content applications(e.g. Facebook, Twitter, etc.), one or more gaming content applications(e.g. Angry Birds, Scrabble, etc.), any other application which may beloaded onto a media content device, and/or any other feature which mayrelate in some manner to the central device.

In one embodiment, the central device may function as a first masterdevice. For example, in the absence of any other master device, thecentral device may automatically assume the task of managing devices,directing and distributing media content, as well as managing anythingrelating to the network system. In another embodiment, the centraldevice may function as the first master device, even if other masterdevices are added to the network system. For example, in one embodiment,other master devices may have the ability to control the distributionand directing of media (e.g. control what is being displayed and whereit is displayed, etc.), but the central device may be the central hubfrom which the content is actually streamed to all other devices on thenetwork system. The central device, therefore, may receive commands fromother master devices to retrieve content (or send requests to slavedevice to stream content to the central device or to any other device)and stream the retrieved content.

In another embodiment, other master devices may have increasedpermissions allowing the device to control the media content beingviewed. However, the central device may remain as the first masterdevice which actually distributes the media content, per the input fromother master devices. Of course, the central device may be configured inany manner to work with other master or slave devices. Further yet,permissions relating to any of the master and/or slave devices, or thecentral device, may be allocated as desired by the user. In someembodiments, the network system may not have a central device. In suchan embodiment, a master device may function as a central device for thenetwork system and direct and distribute media content accordingly.

In one embodiment, the settings menu may be displayed by selecting asettings button associated with a built-in infotainment system, giving avoice command (e.g. “display settings,” etc.), selecting a settingstouch icon, and/or any other representation and/or command which maycause the settings menu to be displayed. In some embodiments, thesettings menu may be disabled on display devices while media content isbeing presented. In other embodiments, the type of device (e.g. master,slave, etc.) may determine whether the settings menu is disabled.

In various embodiments, the content submenu may relate to content mediaavailable on the network system. For example, in one embodiment, asdevices are connected to the network system, a master device or centraldevice may scan the new device to determine what media content is foundon the device. If content is found, the master device or central devicemay request permission to share the media content with other deviceslocated on the network system. In other embodiments, a single overallpermission may be given by the device at the time of logging into thenetwork system to the master device or central device, relating toscanning for, retrieving, and distributing media content. Further still,in other embodiments, the permissions may relate to features beyondcontent available on the device, including data connections, batterystatus, user identifications, message retrieval and scans, textmessaging, and/or any other feature associated with the device.

In some embodiments, the content submenu may relate to local mediaand/or cloud-based media, if available. For example, in one embodiment,the network system may be located in an area without a data connection,in which case the cloud-based media option would not be available and/ordisplayed. In other embodiments, a distinction between local mediaand/or cloud-based media may not be displayed, and only available mediacontent (regardless of whether it is local or cloud-based) may bedisplayed.

In various embodiments, the local media may include any media content onthe network system. For example, videos, photos, music, games,screencasts, and/or any other content which may be streamed and/or sentto another device. In one embodiment, resources of a device may beconstrued as media content. For example, a camera located on a devicemay be used as a network media content resource. Of course, any featureon a network system device may be used (if permissions are granted) byother devices in the network system.

In some embodiments, the navigation of the settings menu and/or anysubmenu may occur through a touch interface, by a voice command (e.g.“navigate to content submenu,” “select local media,” etc.), by aphysical button (e.g. integrated into an infotainment car system,integrated into a classroom media system, etc.), by a remote control,and/or any other device which may send a command to the settings menu.

In one embodiment, the people/device subfolder may display connectionsof devices and/or people on the network system. For example, in oneembodiment, where information about the user using the device is known(e.g. user id, etc.), the user identification may be used rather than adevice identification. Of course, the master device may configure in anymanner how the devices and/or people are displayed.

In some embodiments, the device identification may not have a userand/or person associated with the device. For example, in oneembodiment, one or more displays may be on the network system but maynot be associated directly with a user and/or person. As such, thenetwork system may include devices which may be associated with a user,or may not be.

Still yet, in one embodiment, one or more remote connections associatedwith the network system may be displayed. For example, in oneembodiment, a remote connection may include a connection to a masterdevice which is located remotely (e.g. geographically separated,geographically out of range, etc.) from the network system. In otherembodiments, any device that is connected into the network system viathe internet may be considered a remote connection. In variousembodiments, a network system may configure remote connections in anymanner, including, for example, preventing remote connections, limitingremote connections to master devices, including slave devices as remoteconnections (e.g. so that media content may be accessed even when thedevice is not present, etc.), and/or configuring the remote connectionin any manner.

In one embodiment, the people/device submenu may include requests. Forexample, the central device or master device may send out a globalrequests (e.g. to all devices on the network system, etc.) requestingpermission to access media content. In another embodiment, a request maybe sent by the central device or master device to a particular device.

In some embodiments, the request may be sent from the central device ormaster device to one or more devices located on the network system. Inother embodiments, the request may be sent from one or more deviceslocated on the network system to the central device or master device.For example, in one embodiment, a device may wish to share and displayon other devices a presentation, a video, and/or any other mediacontent. The request may be sent to the master device or central devicewhich may then approve the request and manage the distribution of themedia content (e.g. retrieve the media content and stream to otherdevices, direct the device to stream the content to other devices,etc.). In other embodiments, the request may be received from a remoteconnection (e.g. to display media content, etc.).

In one embodiment, receiving a request to a master device or centraldevice may require user input, or may be determined automatically. Forexample, in one embodiment, an interface may be displayed, notifying themaster device or central device of the request, with the ability to“grant” or “deny” the request. In other embodiments, the determinationmay occur automatically based on one or more rules. For example, in oneembodiment, it may be determined that the request is coming from adevice to which permission to display media content had been granted atleast once in the past. Based off of prior interaction, therefore, themaster device or central device may automatically grant permission. Inanother embodiment, if a device had been denied permission at leastonce, then the master device or central device may deny permission forthe device to display media content. In other embodiments, the rules maybe based off of the user controlling the device (e.g. user id, etc.),prior interaction with the network system, an amount of time a devicehas been connected to the network system, a number of times a device hasconnected to the network system, a position (e.g. manager,administrator, etc.), metadata associated with the media content (e.g.creator, etc.), and/or any other information associated with the contentmedia or device or user which may be used to grant or deny permission.

In another embodiment, if user input is not received within a set timeperiod (e.g. 30 seconds, etc.), then the request may be automaticallydenied or granted, consistent with the foregoing paragraph.Additionally, in another embodiment, if user input is not receivedwithin a set time period, then the request may be placed in a queue ofpending requests associated with the master device or central device.

In one embodiment, the network submenu may display active deviceconnections, cellular data connections (e.g. aggregate connection,individual device data connection, etc.), a topology of devices (e.g.location of where devices are connected, etc.), a security of thenetwork system (e.g. permissions, passwords, firewall configuration,etc.), configuration settings relating to master and/or slave devices(e.g. devices which have been granted master configuration, permissionsrelating to each device, temporary master setting, pending masterrequests, etc.), as well as any other setting which may relate in somemanner to the network of the network system.

In one embodiment, the network system may permit two or more activeconnections per device at the same time. For example, in someembodiments, a slave device may be connected to the network systemwirelessly (e.g. WiFi, etc.), and may be simultaneously connected to acellular data connection. Additionally, in other embodiments, the devicemay also be connected to other network connections and/ordevice-to-device connections (e.g. Bluetooth, etc.). In someembodiments, in order to establish two or more active networkconnections, a network bridge may be established on the device.

In one embodiment, the current status bar may display what is beingplayed and/or displayed to all devices on the network system. In otherembodiments, the status bar may indicate what media content is beingviewed on each device. Further still, in one embodiment, the status barmay indicate what devices are receiving one or more streaming mediacontent from the master device or central device.

FIG. 8 illustrates a vehicle communication system 800 for distributingand directing of media content, in accordance with one embodiment. As anoption, the system 800 may be implemented in the context of the detailsof any of the foregoing Figures. Of course, however, the system 800 maybe carried out in any desired environment. Further, the aforementioneddefinitions may equally apply to the description below.

As shown, the system 800 may include steering wheel apparatus 802, aninfotainment center device 804, wireless communication 806, repeaters808, mobile phone devices 810, device to device communication 812,tablet devices 814, and in-seat devices 816.

In one embodiment, the steering wheel apparatus may include the abilityto control an infotainment system, one or more mobile devices (e.g.mobile phones, tablets, computers, etc.), and/or any other deviceassociated with the vehicle. For example, in some embodiments, thesteering wheel apparatus may include the ability to raise and/or lowerthe volume, change the music, change the designation of the controllingmaster device, select which media content to display, select which mediacontent to distribute, approve one or more new devices, approve and/ordeny requests from one or more of the connected devices, and/or take anyother action relating to the vehicle and media content.

In various embodiments, the infotainment center device may function as acentral device and/or a master device. In other embodiments, theinfotainment center device may be permanently integrated into thestructure of the vehicle. In other embodiments, the infotainment centerdevice may be mobile but must be kept within certain geographic boundsof the vehicle (e.g. within 2 feet of the perimeter of the vehicle,etc.).

In another embodiment, the infotainment center device may be in wirelesscommunication with one or more devices (e.g. mobile phone devices,tablet devices, in-seat devices, etc.). In other embodiments, thecommunication between the infotainment center device and any device mayoccur through a wired connection (e.g. dock connector, Ethernet, systemconnector, etc.).

In one embodiment, the communication between the infotainment centerdevice and any device may occur by any communication technology (e.g.IP, USB, Bluetooth, Wi-Fi, Wi-Fi Direct, Real-Time Protocol, UniversalPlug and Play, etc.). Additionally, in other embodiments, thecommunication may include a standard by which the devices maycommunicate (e.g. Mirrorlink, etc.). Of course, however, any standardand/or technology may be used to connect the devices (e.g. infotainmentcenter device, mobile phone devices, tablet devices, in-seat devices,and/or any other device in the vehicle, etc.).

In another embodiment, the communication may allow the display and/ormedia content found on any of the devices to be controlled by a masterdevice (e.g. central device, infotainment center device, etc.). In otherembodiments, any of the devices (if permissions are granted by a masterdevice) may control at least part of the functionality associated withthe infotainment center device (e.g. raise/lower volume, change channel,change media content, accept/deny new devices and/or requests, etc.).Further still, any of the devices (if permissions are granted by amaster device) may control at least part of the functionality associatedwith the vehicle (e.g. raise/lower air temperature, raise/dim lights,redirect air flow, open sunroof, raise/lower windows, etc.).

In one embodiment, the repeaters may be used to extend the range of thewireless communication. However, in some embodiments, the signal may besufficiently strong by a device and/or wireless transmitter to not needa repeater. Nonetheless, in one embodiment, the repeaters may be used tocommunicate with other vehicles and/or data sources. For example, in oneembodiment, the repeaters may be used to establish a mesh-network withother vehicles, login to temporarily available WiFi networks, be used toestablish and/or communicate with satellites (e.g. for datatransmission, etc.), and/or enhance the vehicle network system in anymanner.

Further, in another embodiment, the in-seat devices may be mobile (e.g.removable from the seat, etc.) or permanent (e.g. built into the seatsystem, etc.) devices. In other embodiments, the in-seat system mayinclude a dock into which a mobile device (e.g. phone, tablet, etc.) maybe inserted. In some embodiments, the in-seat system may providecharging functionality, network connectivity (e.g. wired connectionand/or wireless connection, etc.), and/or provide any functionality toother devices to connect to the vehicle network system.

FIG. 9 shows a user interfaces 900 for distributing and directing ofmedia content, in accordance with one embodiment. As an option, the userinterfaces 900 may be implemented in the context of the details of anyof the foregoing Figures. Of course, however, the user interfaces 900may be carried out in any desired environment. Further, theaforementioned definitions may equally apply to the description below.

As shown, a notification user interface 902 may be displayed. In oneembodiment, the notification user interface may include a notificationof a network status (e.g. connected/denied, etc.), a permission level(e.g. master/slave, etc.), a request response (e.g. request for media isgranted/denied, etc.), and/or any other notification which may relate insome manner to the network system.

In one embodiment, the notification may be displayed only for the firsttime the device is initially connected to the network system. In such anembodiment, the notification may be disabled for any future connection,and may automatically connect to the network using previously configuredsettings.

In another embodiment, the notification may reflect an exchange betweenthe device and the networks system. For example, in one embodiment, thedevice may send credentials (e.g. user id, device id, etc.) to thenetwork system. The network system may recognize the credentials (e.g.based off of database list, etc.), or may recognize metadata associatedwith the credentials or the device (e.g. group role, user position,etc.). Based off of such interaction, and exchange of information, thedevice may display a notification informing the user of the results ofthe exchange. For example, in one embodiment, the notification mightread, “It is detected this phone belongs to Mr. XYZ, President of ABCCorp. This phone is now a MASTER device on network “12345.” Would youlike to modify network settings?” In this embodiment, therefore, thenotification notifies the user of the device the results of the exchange(e.g. credentials passed to the central network system device and a setof permissions granted, etc.). Of course, in other embodiments, thenotification may include any language based off of the exchange.

In other embodiments, the notification user interface may include theability to “select media” and/or “direct media.” Further still, in oneembodiment, the notification may be an overlay pane on the device, andbelow the overlay pane may be one or more buttons relating to the mediacontent being displayed and/or played. For example, in one embodiment,the one or more buttons may include the ability to play, share, and/orsend the media content. In some embodiments, such buttons may depend onwhether the device is connected to a network system. For example, if thedevice is not connected to a network system (e.g. for sharing, etc.),the “share” function may be grayed out and may not be selected. However,in other embodiments, if the device is connected to a network system,then the option to share the media content may be displayed.

In some embodiments, selecting to share the media content may cause aseparate interface to be displayed. For example, in one embodiment, theinterface may include a request to share with a specific device, to agroup of devices, and/or to the entire network. In some embodiments, therequest may be sent directly to the requested device. In otherembodiments, the request may be sent to a pre-designated master device(e.g. central device of the network system, etc.) which manages allrequests from the devices. Of course, the interface may be configured inany manner to facilitate the sharing of the media content.

As shown, a button 904 to modify networks settings may be selected, andin response, a master device interface 906 may be displayed. In someembodiments, the master device interface may differ, based on the levelof permissions associated with the device. For example, in oneembodiment, a central master device may have the ability to controland/or manage all devices on the network system. Whereas, in anotherembodiment, a regular master device on the system may have the abilityto control media content and not necessarily manage devices on thenetwork system.

In one embodiment, the master interface may include one or morefeatures, including the ability to select details relating to devices,control network settings, select controls (e.g. shortcuts on thedevices, shortcuts on the steering wheel assembly, etc.), integrate withthe infotainment system and/or interact with a central device, receiveinformation relating to data (e.g. how much data has been used by thenetwork system, etc.) and/or select one or more available data streams(e.g. associated with individual devices, etc.), control remote settingsfor remote devices, and/or control any other feature associated with thenetwork system.

In another embodiment, the master interface may include settingsrelating to media content. For example, in various embodiments, a music,video, and/or photo setting may allow the user to select which devicescan be used for content retrieval, a type of genre available to bestreamed (e.g. hip-hop music, adventure movies, nature photos, etc.), atime period to limit the number of files (e.g. movies before 1950,photos taken after year 2012, etc.), specific content files which may ormay not be used by the network system (e.g. parental controls, etc.),and/or any other setting relating to music, video, and/or photo. Inanother embodiment, settings relating to 3^(rd) party applications mayinclude whether other devices can use 3^(rd) party applications ofanother device (e.g. although it may depend on the license associatedwith the 3^(rd) party application associated with the host device,etc.), integration settings relating to multiple devices (e.g. eachdevice may have the same app installed and the master controls allowsfor how the devices interact, etc.), and/or any other setting relatingto 3^(rd) party applications.

Still yet, in one embodiment, the media content may be related to amedia server (e.g. PLEX, etc.). In such an embodiment, the master devicemay control how content is retrieved from the media server. For example,in one embodiment, the media server may be located remotely from thenetwork system. As such, settings may relate to the quality of contentmedia delivered to the network system, whether cellular data can be usedto retrieve content media, the size of the displays on the networksystem (e.g. if not automatically detected, etc.), designate a specificdisplay(s) to stream to (e.g. default settings, etc.), configure audioto be sent to the vehicular assembly, select whether subtitles are to bedisplayed, select preferred language to be used, select when to updatethe database and refresh the library, and/or any other setting which mayrelate to a media server.

In some embodiments, the media server may be located locally on thenetwork system. In other embodiments, the media server may be locatedremotely to the network system, and data may be fetched using anyavailable network communication (e.g. WiFi, cellular data, etc.).

Further still, in one embodiment, the user may select one or more voicecommands to be associated with the device. In one embodiment, the voicecommands may be associated with any master device. Or, in otherembodiments, the voice commands may be associated with just one device,or with one central device. In one embodiment, even if the voicecommands are associated with just one device, the voice input may beretrieved from a device that has an available microphone. For example,in one embodiment, the central device may be the only device capable ofreceiving voice commands to control the network system. A voice commandmay be given indicating “Play Bob Marley,” may be received by a slavedevice, and the input may be sent to the central device for processingand potentially for fulfilling.

In one embodiment, verification and/or security may be associated withthe voice commands. For example, the device with voice commandpermission may have a button to commence the voice command. In otherembodiments, the voice command may be associated with a particularvoice, and only inputs from that voice will be processed and fulfilled.

As shown, a button to select media 908 may be selected, and a selectmedia by device interface 910 may be displayed. In one embodiment, thedevices connected to the network system may be displayed. In anotherembodiment, a list of pending requests of devices to join the networksystem may be displayed, as well as a list of rejected devices deniedaccess to the network system.

In various embodiments, the devices may display content in any manner.For example, in one embodiment, the content may be displayed by name, bya graphic (e.g. icon, etc.), by a grouping (e.g. genres, artist, albums,year, etc.), or in any other manner. In some embodiments, the interfacedisplayed may be dependent on the type of device. For example, in oneembodiment, the device may include a touch-screen, and so the interfacemay be touch-optimized to receive inputs from a finger, stylus, and/orany other input mechanism. In another embodiment, the device may not bea touch-screen, and may rely upon integration of a mouse, in which casethe text and/or graphics may be displayed in a smaller manner. Ofcourse, the manner in which the media content is displayed by device maybe altered in any manner by the user.

In one embodiment, rather than divide the media content by device, allof the media content may be aggregated together, permitting the user ofthe device to browse and/or search through all connected devicessimultaneously.

In another embodiment, a search function may be permitted whereby mediacontent available on any device connected to the network system may besearched and/or displayed in the results. In various embodiments, thesearch function may search media content stored locally on the devicesconnected to the network system, stored remotely on a cloud-basedsystem, and/or stored in any other location.

In one embodiment, a queue of media content may be displayed. Forexample, in one embodiment, the queue may contain media content placedtherein by a master device (e.g. or a device with master permissions,etc.), by a device requesting content to be played (e.g. from a slavedevice, requires approval by a master device, etc.), may display relatedmedia content to the currently being played media content (e.g.similarity lists, video playlist, music playlist, etc.), and/or may becreated and/or edited by any other device and/or user.

In some embodiments, the queue may be associated with one or more onlineaccounts. For example, in one embodiment, the queue may be associatedwith an online music service (e.g. Pandora, Spotify, Google Music,etc.), online video service (e.g. Youtube, Vimeo, etc.), online mediaserver (e.g. PLEX, etc.), and/or any other online service. In such anembodiment, the queue may be populated with one or more media contentfrom one or more online services. In other embodiments, the queue may bepopulated by media content stored locally (e.g. on devices in thenetwork system, etc.), in combination with, or not including, the onlineservices.

In one embodiment, the queue may be managed by a master device. In otherembodiments, any of the slave devices may submit requests to add toand/or reorganize the content in the queue. In another embodiment, theslave device may have extended permissions to modify the queue in somemanner (e.g. add to, delete entries, etc.). Further yet, in oneembodiment, if a device is a guest on the network system, the device mayhave access to view the queue. In other embodiments, the guest devicemay have permission to add to and/or modify the queue in some manner.

As shown, a button to direct media 912 may be selected, and a directmedia interface 914 may be displayed. In one embodiment, the directmedia interface may display a current status of all devices on thenetwork system and the media content being displayed on each device. Inone embodiment, the current status pane may include showing a thumbnailimage of the display of each of the devices.

In another embodiment, if a device is not currently viewing a mediacontent, the current status pane may list the device as having “no mediacontent currently being displayed.” Of course, in another embodiment,any designation may be displayed. Additionally, if a user is using morethan one media content (e.g. listening to music and playing aninteractive game, etc.), the direct media interface may list allassociated media content files currently being displayed and/or used onthe device.

In another embodiment, a master device may select how to direct mediacontent. For example, in one embodiment, a master device may selectwhich devices (or displays) to control the display, the media contentwhich is desired to be streamed, the streaming device (e.g. masterdevice, slave device, etc.) used to broadcast the media content, and/orany other information which may influence how the media content is sentto displayed on other devices.

Still yet, in one embodiment, a master device may direct media by firstselecting a media content (e.g. available on the network system, etc.),and then selecting to direct the media content, after which a directmedia interface may be displayed to complete the directing of the mediacontent to all devices.

In another embodiment, a user may be viewing a media content on a slavedevice and a master device may select the media content being viewed bythe user on the slave device, and select to direct it also to all otherdevices. In this embodiment, the direct media interface may beautomatically populated based off of information of where the mediacontent is being played (e.g. source of the file, source of thestreaming device, etc.). Additionally, in other embodiments, shortcutsfor directing the media content to all or some of the devices on thenetwork system may be preconfigured to facilitate the directing of mediacontent.

FIG. 10 shows a user interface 1000 for distributing and directing mediacontent, in accordance with one embodiment. As an option, the userinterface 1000 may be implemented in the context of the details of anyof the foregoing Figures. Of course, however, the user interface 1000may be carried out in any desired environment. Further, theaforementioned definitions may equally apply to the description below.

As shown, the user interface 1000 may include media content 1002 beingdisplayed. In various embodiments, the media content may include anytype of content, including pictures, videos, music, presentations (e.g.powerpoint, etc.), web content, websites, documents, and/or any othercontent which may be displayed on the device and/or played by thedevice. The media content being displayed may include a current statusbar 1004 which may show that which is currently being displayed.

In one embodiment, the current status bar may display informationrelating to that which is being displayed, including, for example, thetitle of the media content (e.g. file name, etc.), the running time ifapplicable (e.g. how many minutes shown, how many minutes left to go,etc.), notable people in the media content (e.g. singer, actor/actress,etc.), the source of the media content (e.g. which device it is beingstreamed from, etc.), and/or any other information relating to the mediacontent. In another embodiment, controls for controlling the mediacontent may also be displayed, including the ability to pause, play,stop, fast-forward, skip, go to the next content (e.g. slide, music,photo, etc.), and/or any other feature which may facilitate thecontrolling of the media content.

As shown, a menu 1006 may be displayed giving further options associatedwith the media content. For example, in various embodiments, the menumay provide social media integration, a recommended action, the abilityto browse content media, the ability to share the media content withother devices, a settings option relating to the program and/or themedia content, and/or any other option which may be associated with themedia content.

In one embodiment, social media integration may include posting anupdate to a social networking website of what is being viewed (e.g.“watching “Life in CA” with users X, Y, and Z, etc.). In one embodiment,contextual information (e.g. who is viewing the media content, etc.) maybe based off of nearby detected devices, a listing by the master deviceof all registered devices, and/or any other source from which all of thedevices and/or users can be determined. In another embodiment, socialmedia integration may facilitate the viewing of other media content. Forexample, in one embodiment, a social media notification may indicatethat user 132 is watching a video. The user may select to watch the samevideo as user 132, which may further be streamed from the device toother devices on the network system. Therefore, in various embodiments,social networking integration may facilitate the viewing of mediacontent.

In one embodiment, a recommended action may be based off of a history ofactions. For example, in one embodiment, a user may be very interestedin seeing any photo including a picture of a dog. If a photo of a dogbecomes available (e.g. on the network system, etc.), a recommended linkto the photo may be displayed. In one embodiment, only the most recentrecommendation may be displayed. In other embodiments, more than onerecommendation may be displayed, depending on the amount of spaceavailable for displaying information.

As shown, selecting the “Share “Life in CA” with other devices” link maycause a details pane 1008 to be displayed. In one embodiment, thedetails pane may include media content information (e.g. title, runningtime, etc.), a source of the media content (e.g. stored on the device,stored in the cloud, publicly accessible, etc.), a rating (e.g. IMDBrating, social media rating, etc.), the ability to select one or moredevices to which the media content will be sent, the option to add themedia content to a queue of one or more devices, the option to send therequest to play the media content on one or more devices, and/or anyother options which may relate to sharing a media content.

In one embodiment, a slave device may initiate the sharing of mediacontent, after which the request is sent to a master device fordistribution and directing. In other embodiments, the slave devices onthe network system may be permitted to select devices to which mediacontent should be sent. Further still, in various embodiments, sendingand receiving media content may be predicated on preconfigured settings.In other embodiments, if settings are not preconfigured, they may beconfigured as needed when sending or receiving for the first time mediacontent.

In another embodiment, a master device may direct media content to aslave device, and the media content may begin to be played on the slavedevice. In one embodiment, a user of the slave device may select todisable control of the master device, and resume control of the device(e.g. play any media content desired, etc.). In another embodiment,however, the master device may control the device completely such thatthe user cannot otherwise use the device until the master device hasrelinquished control of it.

FIG. 11 shows a system 1100 for distributing and directing mediacontent, in accordance with one embodiment. As an option, the system1100 may be implemented in the context of the details of any of theforegoing Figures. Of course, however, the system 1100 may be carriedout in any desired environment. Further, the aforementioned definitionsmay equally apply to the description below.

As shown, the system 1100 may include one or more mobile phone devices1102 and one or more mobile tablet devices 1104. Additionally, the oneor more mobile phone devices and the one or more mobile tablet devicesmay communicate device-to-device wirelessly 1106. In other embodiments,the communication between devices may occur through a wired connection.

Further, as shown, one or more master devices 1110 may be included, andwireless communication 1108 may occur between the master devices and/orbetween the master device and one or more mobile phone devices and/ormobile tablet devices. In various embodiments, the one or more masterdevices may include one or more central devices.

In various embodiments, the master device may direct media content toanother mater device and/or any slave device. For example, in oneembodiment, the transmitting of media streams may include one or moremedia streams, including, for example, an audio component stream, avisual component stream, and/or a further real time live update datastream. Additionally, in other embodiments, multiple streams of mediacontent may occur simultaneously.

As an example, in one embodiment, a slave device may push the audiorelating to an audio book to the front speaker system of the car audio.In such an embodiment, a separate slave device may push a video which isdistributed by a master device to all displays on the networks system,and the audio component is directed back to the car audio system but isplayed on the back speaker system. In this manner, therefore, multipleinputs and/or streams may be distributed in a network system. Of course,in another embodiment, a first audio stream (e.g. associated with anaudio book from a slave device, etc.) may be directed to a car systemheadphone system, and a second audio stream (e.g. associated with avideo from a slave device, etc.) may be directed to a car system audiospeaker system. In other embodiments, the transmission of audio streamsand/or video streams may be altered and/or configured by the user in anymanner.

In a separate embodiment, therefore, audio and video stream informationmay be split into additional streams as necessary. In other embodiments,the audio and video content may be kept as one stream. Further yet, amaster device may keep the audio and video streams as one incomingstream, but output the audio and video stream in more than one stream.

As an example, in one embodiment, a slave device may stream to a masterdevice a video file. The master device may forward the streaming to oneor more devices in the network system, wherein the forwarding includesboth the video and audio component of the media content. In a separateembodiment, the master device may play the media content, and direct thevideo and/or audio components separately. For example, a first audiochannel may be in a first language, a second audio channel in a secondlanguage, etc. and the master device may send out all such channels toall devices. In one embodiment, the devices may automatically determine(e.g. based on preferences, etc.) which audio channel should be played.In another embodiment, the master device may select which audio channelshould be sent to specific devices. Further yet, in another embodiment,the master device may stream multiple video channels, each of which maybe associated, for example, with separate subtitles. Like the audiochannels, the video channels may likewise be sent out to all devices,and configured either automatically (e.g. user preferences, etc.) or bymanual settings of the master device (e.g. send video stream withChinese subtitles to Device X, etc.).

Moreover, in a separate embodiment, such audio and/or video streams maybe directed by the master device as desired. For example, in oneembodiment, the master device may be associated with a bus touringcompany, and specific languages may be sent to specific devices basedoff of the occupants of the bus. Or, in a separate embodiment, eachoccupant may select the preferred language to be heard on the device,and based off of the temporary user preference, the applicable audioand/or video channel may be played.

In one embodiment, if a slave device is already playing media content,and the master device streams media content, the slave device may retaincontrol as to whether the individually viewed content is continued to beplayed, or whether content from the master device is played. In anotherembodiment, preconfigured preferences on the salve device and/or themaster device may be control automatic settings, including permittingthe master device to automatically stream to and control the display ona slave device. Of course, in other embodiments, a slave device may beconfigured not to automatically cede control of the display to a masterdevice. In such an embodiment, if media is streamed from a masterdevice, a prompt may be displayed on a slave device requestingpermission to display the media content from the master device.

In one embodiment, automatic streaming of content from a master deviceto one or more slave devices may include pushing content. For example,in one embodiment, the pushing of one or more streams (e.g. video,audio, etc.) may be managed by a master device and/or central device. Inanother embodiment, the pushing of streams may be controlled by a masterdevice associated with a vehicle assembly (e.g. infotainment centerdevice, etc.).

In another embodiment, streaming of content and subsequent display ofcontent on one or more devices may be based on one or more triggers. Forexample, in various embodiments, a trigger (e.g. for controllingdevices, for pushing content to devices, etc.) may be based off oflocation (e.g. GPS location, etc.), the type of users that are logged in(e.g. tourists, managers of the company, students of a class, etc.), thenumber of users that are logged in (e.g. threshold number of userstriggers automatic direction by master device, etc.), and/or any otherinput which may influence how media content is streamed and/ordisplayed.

In one embodiment, if a master device is requesting content from acloud-based source, the master device may request a specific size (e.g.screen dimensions, etc.) of the media content. For example, in oneembodiment, the master device may detect ten devices on the networksystem, each of which has a different sized screen. The master devicemay determine that the largest screen size of the ten devices is1600×900 pixels. As such, the master device may request form thecloud-based source the media content which would conform with thelargest screen size of all of the devices on the network system. Oncethe media content has been received, the master device may optimize thereceived media content for other devices with smaller screen sizes onthe network system.

In other embodiments, rather than the master device requesting the mediacontent from a cloud-based source, the master device may request eachindividual slave device of different screen size to request and retrievethe media content based on the screen size of the device. Once received,the slave device may distribute (per the instructions of the masterdevice) the media content to other devices having the same screen size.

In one embodiment, if the number of devices exceeds a set threshold,more than one master device (or a slave device given extendedpermissions) may be used to distribute and direct media content. Forexample, in some embodiments, having one master device may create abottleneck as all requests are sent to one device, and media content isstreamed from one device. In one embodiment, therefore, two or moremaster devices may work in conjunction in receiving requests and indistributing and directing media content. For example, if more than 20devices are being controlled by one master device, another device may bepromoted to function as a master device to assist in distributing themedia content. In such an embodiment, the second master device may stillreceive commands and/or instruction from the first master device, butmay otherwise be capable of distributing and directing media to one ormore other devices.

Further yet, in one embodiment, one or more override features may bepresent in the network system. For example, in one embodiment, thevehicle assembly may include the ability to temporarily disable allpermissions on devices and effectively act as a master device. In thisembodiment, therefore, a parent may still retain control of deviceswithin the vehicle system even while driving or otherwise controllingthe vehicle.

In another embodiment, an override feature (e.g. to override aninstruction from a master device, etc.) may be provided whereby apassword, a keystroke, and/or any other input may be used to overridethe control of the master device (or the vehicle assembly).

In one embodiment, the audio and/or video channels may be associatedwith a hierarchy. For example, in one embodiment, a specific audiostream may not be accessible to all devices, but only those associatedwith specified metadata (e.g. position of manager, etc.). As such, videoand/or audio streams may be selectively distributed. In otherembodiments, network system resources may require no permissions. Forexample, in one embodiment, a backup camera on the vehicle may beaccessed by any device on the network system.

Further yet, in one embodiment, the hierarchy of streams may changedepending on the context of the input streams. For example, in oneembodiment, if the vehicle is backing up and the back-up camera isactivated, then the central device display may automatically show thevideo input stream from the back-up camera. In this embodiment,therefore, streams relating to safety make take precedence over lesscritical streams. Moreover, in other embodiments, a stream relating to anavigation update, or a news flash relating to an accident ahead, maytake precedence over an entertainment stream. For example, the audiofrom a video being displayed on the devices may be temporarily muted toreceive a more important update relating to navigation or a news flash.

In one embodiment, for those audio and/or video streams which may beaccessed (e.g. by any slave device, by a device which has permissions,etc.), the device receiving the one or more streams may combine themwith digital elements to form an augmented reality. For example, in oneembodiment, a video stream from an outward-facing camera on the vehiclemay be streamed to one or more slave devices, which may take the videostream and display it on the device and allow the user to interact withthe input stream in some manner. For example, the input stream on thedevice may provide a constantly changing background upon which the usercan trace images (e.g. draw or paint application, etc.), play a game(e.g. hop over identified obstacles, search for known targets, etc.),and/or interact with the input stream in any manner.

In various embodiments, the master device may direct where streams areplayed. For example, one or more devices may be associated withheadphones. An incoming message may be localized and played on theheadphones associated with the person to who the message is directed.Or, in another embodiment, if a navigation update occurs, rather thanmuting all speakers in the vehicle, the front speakers surrounding thedriver may be muted to play the update. In this manner, therefore, themaster device may direct where and how the streams are played.

FIG. 12 shows a user interface 1200 for distributing and directing mediacontent, in accordance with one embodiment. As an option, the userinterface 1200 may be implemented in the context of the details of anyof the foregoing Figures. Of course, however, the user interface 1200may be carried out in any desired environment. Further, theaforementioned definitions may equally apply to the description below.

As shown, the user interface 1200 may include a title bar 1202, a menuoption 1204, a now playing interface 1206, a request 1208, a now playingpane 1210, and a queue 1212. In various embodiments, the elements may berearranged, added to, and/or may include fewer items than that shown.

In one embodiment, the title bar may display information relating to thedevice. For example, in one embodiment, a device identification (e.g.Central Device Infotainment System, Master Device 1, Bob_Device_1,etc.), network connectivity (e.g. WiFi connection, LAN connection,cellular connection, etc.), the number of devices connected to thenetwork (e.g. 4 out of 6 devices in the vehicle are connected to thenetwork system, etc.), the number of devices currently being managed bythe device (e.g. all devices are being managed, 2 out of 4 devices arebeing managed, etc.), time (e.g. clock feature, etc.), informationrelating to the media content (e.g. amount of time left for the content,number of pictures left n the folder, amount of slides left in thepresentation, etc.) may be displayed.

In another embodiment, the menu option may be displayed in any manner,including in response to a voice activation (e.g. “menu,” etc.), inresponse to selecting the screen (e.g. causes a touch interface to bedisplayed, etc.), being a permanently displayed button, being atransparent button, and/or being displayed in any other manner. In oneembodiment, the menu option may be displayed in response to an actiontaken by another device. For example, in one embodiment, a slave devicemay send a request to a master device to display media content on otherdevices. In response to receiving the request at the master device, oneor more options, including a menu button, may be displayed.

In one embodiment, the now playing interface may include any mediacontent currently being displayed and/or directed to other devices. Forexample, in various embodiments, the now playing interface may display avideo being streamed to other devices, a presentation (e.g. powerpoint,etc.), a slideshow (e.g. photos, etc.), a visualization (e.g. associatedwith music, etc.), and/or nay other media content. In one embodiment, ifa request is received at the device, the now playing media content maypause until the user gives an input (e.g. accepts or denies the request,etc.). In other embodiments, the now playing media content may continueto be displayed and played even if a request is received.

In some embodiments, the request may depend on permissions associatedwith the requesting device. For example, in one embodiment, a firstdevice may have permission to stream media content to another device,but may not have permission granted to utilize the data connection ofthe another device. In such an embodiment, therefore, a request may berouted to a master device to approve allowing the first device toutilize the data connection of the another device. In anotherembodiment, the request may be directed to the device to which therequest pertains. For example, in one embodiment, if the request relatesto utilizing a data connection of a particular device, then the requestwill be sent to the device to which the data connection is desired to beused. In other embodiments, sending a request may be routed through themaster device to the appropriate device. Further yet, if the requestrelates to two or more devices, then the request may be routed directlyto the master device for approval.

As an example, a user may wish to share a video from a first device toall other devices located on the network system. In one embodiment, theuser may send via the first device a request to the master device toapprove sharing the video with all other devices. For example, therequest may indicate “Device “XYZ123” requests to show “Youtube: best ofCompilation 2013” on all devices” with the following options beingdisplayed: “accept,” “deny,” and “add to queue.” In another embodiment,any option may be displayed associated with the request, including theability to modify the request (e.g. modify one or more elements, etc.),modify permissions needed for the request, manage the network (e.g.configure data connection configuration, etc.), and/or take any otheraction relating to the request.

In one embodiment, requests may be disabled if media content is beingplayed by the master device. In another embodiment, a request may bedisplayed in a less obtrusive manner (e.g. bottom of screen, etc.)and/or may be associated with a time element (e.g. the requestdisappears after being displayed for 3 seconds, etc.).

Still yet, in another embodiment, a now playing pane may be permanentdisplayed at the bottom of the device display. In other embodiments, thenow playing pane may be displayed in any manner, including displayinginformation relating to the media content (e.g. title, device source,number of devices the media content is being streamed to, timeremaining, related media content available on the network system, etc.),displaying one or more actions associated with the media content (e.g.pause, play, stop, fast forward, rewind, etc.), being displayed inresponse to an input (e.g. touch, etc.) or a trigger (e.g. end of mediacontent, incoming request, new device added to network system, etc.),and/or being displayed in any other manner and/or displaying any otherinformation relating to the media content.

In one embodiment, the queue may include a list of items to be played onthe network system. In one embodiment, more than one queue may exist,and may be associated with a media content type (e.g. video file, musicfile, photo file, etc.), a source device (e.g. a first slave device,etc.), a user (e.g. User_123, etc.), and/or any other association whichmay cause a separate queue to be created and/or displayed. In oneembodiment, the queue may be associated only with a single device (e.g.queue for the specific device, etc.). In other embodiments, if thedevice was a master device, the queue may relate to one or more deviceson a network system. In such an embodiment, the master device may haveone or more queues being displayed, including a queue for audio contentbeing played on the front speakers, a queue for video content beingtransmitted to specified devices, a queue of audio books beingtransmitted to a Bluetooth head receiver, and/or any other queue whichmay be associated with a master device.

In one embodiment, the queue may be automatically created and/or managed(e.g. based off of automatic inputs from other devices, based off ofplaylists, based off of cloud based media system, etc.). In otherembodiments, the queue may be created and/or managed manually (e.g.select particular items to be played, individually approve of requestsfrom other devices to be put into the queue, etc.). Of course, in afurther embodiment, regardless of whether the queue is createdautomatically or manually, the queue may be modified as desired by theuser, including deleting one or more media content (e.g. swipe the mediacontent to the side to delete from the list, etc.), adding one or moremedia content (e.g. based on requests, browse network system to addmedia content, etc.), rearranging the listed media content (e.g. touchmedia content for predetermined time and then drag to desired positionin queue list, etc.), and/or take any other action relating to thequeue.

FIG. 13 shows user interfaces 1300 for distributing and directing mediacontent, in accordance with one embodiment. As an option, the userinterfaces 1300 may be implemented in the context of the details of anyof the foregoing Figures. Of course, however, the user interfaces 1300may be carried out in any desired environment. Further, theaforementioned definitions may equally apply to the description below.

As shown, user interfaces 1300 may include a master device interface1302, one or more network connections 1304, a first slave deviceinterface 1306, and a second slave device interface 1308.

In one embodiment, the master device interface may display a currentlyplayed media content. Further, in another embodiment, the master deviceinterface may display that which is being displayed on all otherdisplays and/or devices on the network system.

Moreover, in one embodiment, the master device interface may have globalor device specific controls associated with the media content. Forexample, in one embodiment, controls relating to a video may includeplay, stop, forward, back, etc. In one embodiment, selecting a control(e.g. play, pause, etc.) on the master device may control the playbackon any other device which is displaying the same media content. In otherembodiments, the devices may retain playback control of the mediacontent. Still yet, in one embodiment, the master device may have thecapability to control a global playback (e.g. on all displays and/ordevices, etc.) and control a master device (or any other device on thenetworks system) specific playback (e.g. playback on the master device,or any other specified device, may not be the same as the globalplayback, etc.).

In various embodiments, the master device may communicate with one ormore other devices (e.g. slave devices, etc.) on the network system,using any type of network system (e.g. WAN, LAN, WLAN, Wi-Fi, Wi-FiDirect, Bluetooth, etc.).

In one embodiment, a first slave device interface may include a mediaqueue. For example, in various embodiments, the device interface mayinclude one or more available media content on the network system,including media content on a master device, and/or media content madeavailable on any other device within the network system. As an example,in one embodiment, the media queue my show a video which has been partlywatched and which is being streamed from a master device. In such anembodiment, the user of the first slave device may wish to pause, fastforward, reverse, stop, and/or take any other action associated with themedia content on the first slave device. In this manner, the first slavedevice may control how the media content is displayed. Of course, inother embodiments, the ability to take an action may depend onpermissions from the master device (e.g. master device may retaincontrol of displays of slave devices, etc.).

Further still, in one embodiment, the media queue may include one ormore media content not yet viewed. In such an embodiment, the one ormore media content may be rearranged, deleted, and/or otherwiseconfigured as desired by the user.

In another embodiment, a second slave device, simultaneous in time tothe first slave device, may display media content being streamed from amaster device. In one embodiment, the second slave device may be in sync(e.g. with time, etc.) with the master device. For example, in oneembodiment, the second slave device may indicate that the media contentbeing displayed is synced with a master device, including “Media Syncedwith Master Device.” Of course, any text may be displayed to indicatethat the media content is in sync with the master device. In oneembodiment, syncing media content with a master device may includedisplaying on the slave device the same thing which is being displayedon the master device.

FIG. 14 shows user interfaces 1400 for distributing and directing mediacontent, in accordance with one embodiment. As an option, the userinterfaces 1400 may be implemented in the context of the details of anyof the foregoing Figures. Of course, however, the user interfaces 1400may be carried out in any desired environment. Further, theaforementioned definitions may equally apply to the description below.

As shown, user interfaces 1400 may include a master device interface1402, one or more network connections 1404, a first slave deviceinterface 1406, and a second slave device interface 1408.

In one embodiment, the master device interface may be optimized for agame. For example, in one embodiment the master device may include aview of all players on the network system playing a game, may display inreal time events or statistics occurring in the game, and/or may displayany other information associated with the game.

In another embodiment, the master device interface may permit the userof the master device to interact with the game. In this manner, themaster device may permit the user of the master device to participatewith the game. In another embodiment, the master device may take aninactive role in the game, and simply display information and/orsettings and/or permissions relating to the playing of the game.

In various embodiments, the master device may communicate with one ormore other devices (e.g. slave devices, etc.) on the network system,using any type of network system (e.g. WAN, LAN, WLAN, Wi-Fi, Wi-FiDirect, Bluetooth, etc.).

In some embodiments, one or more slave devices (or master devices) maybe used to interact with a game system. For example, in one embodiment,a network system may be configured to allow one or more devices tocommunicate, initiate a game, and/or interact during the game. In suchan embodiment, therefore, permissions associated with devices on thenetwork system may be context based (e.g. permissions may be associatedwith the game on the device, etc.).

As an example, in one embodiment, a game may be started on a first slavedevice. Two other slave devices and one master device may wish to jointhe game and may do so. In one embodiment, all devices associated withthe game system may have equal permissions, rights, and privileges asall other devices connected to the game, including the master device. Insuch an embodiment, therefore, all devices playing a game may be equallyranked in a hierarchy of devices. In a separate embodiment, the masterdevice may retain one or more additional permissions (e.g. ability tokick off of a player, ability to restrict amount of time one or morespecific users may participate in the game, etc.).

In one embodiment, the game system may be entirely based on deviceslocated locally within the network system. In other embodiments, thegame system may permit incorporating one or more cloud-based features(e.g. utilities, plugins, entire apps, users, systems, other networksystems, etc.).

In another embodiment, latency considerations may determine one or morefeatures associated with the game. For example, in various embodiments,a Wi-Fi connection may be switched to a LAN connection (or a Wi-Fidirect, or Bluetooth high speed, etc.) to accommodate the fastertransfer of data, quality may be downgraded on the device so that realtime updates occur more in real time (e.g. decreasing lag between theoccurrence of the action and it being displayed on the user's device,etc.), devices may communicate device-to-device (e.g. Bluetooth, etc.)rather than via one central device to reduce bottleneck considerations,and/or any other feature associated with the game to optimize the gamingexperience on the device.

Further still, in one embodiment, each device may be used to offloadprocessing from a central device (e.g. to help reduce latencyconsiderations, etc.). In a separate embodiment, a central device may beused to process inputs from one or more devices participating in thegame.

As an example, in one embodiment, a first slave device may select toview available games being played by other devices on the networksystem. In one embodiment, the first slave device may be invited toparticipate in the game and may have a pending request displayed. Inother embodiments, the first slave device may select to join the game,regardless of whether a request to join was sent by another device.Further still, in one embodiment, a thumbnail of the game may bedisplayed, showing a current status of the game.

In another embodiment, a user of a first slave device may start aseparate new game on the slave device. In selecting to start a game, theuser may be asked to invite one or more other devices located on thenetwork system. In some embodiments, such a request may be sent to themaster device for approval. In other embodiments, the request may besent directly to the indicated device. In this manner, a user on a firstdevice may initiate a game and invite other network devices toparticipate.

Still yet, in one embodiment, a user of a second slave device maydisplay the game. Updates from other devices may be shown on thedisplay. Additionally, in one embodiment, the user of the second slavedevice may have a “menu” function to change settings associated with thegame. In contrast, a separate device (e.g. a master device, etc.) mayhave more than a “menu” option and may include a “players” option (e.g.to approve/deny players, etc.), and/or any other option associated withthe game.

FIG. 15 shows user interfaces 1500 for distributing and directing mediacontent, in accordance with one embodiment. As an option, the userinterfaces 1500 may be implemented in the context of the details of anyof the foregoing Figures. Of course, however, the user interfaces 1500may be carried out in any desired environment. Further, theaforementioned definitions may equally apply to the description below.

As shown, user interfaces 1500 may include a master device interface1502, one or more network connections 1504, a first slave deviceinterface 1506, and a second slave device interface 1508.

In one embodiment, a master device interface may display in a backgroundvideo content being streamed to (or approved to be fetched by) one ormore other devices. Additionally, in one embodiment, the master deviceinterface may display an audio queue. For example, in one embodiment,the audio queue may relate to any audio content listed to be played inthe network system, including, a list of music to be played on backspeakers, a specific audio book to be played on front speakers, andvideo media content to be sent to Bluetooth headphones (or to a channelor specific audio jack located within the network system, etc.).

In various embodiments, the master device may communicate with one ormore other devices (e.g. slave devices, etc.) on the network system,using any type of network system (e.g. WAN, LAN, WLAN, Wi-Fi, Wi-FiDirect, Bluetooth, etc.).

In one embodiment, a first slave device interface may includeinformation associated with an audio book. For example, in oneembodiment, the slave device may have the ability to control theplayback of the audio boo, and/or may have the ability to read the textassociated with the audio book. In some embodiments, the audio bookmedia content may be located on the slave device, a master device,and/or any other device associated with the network system (e.g. localor remote, etc.).

In another embodiment, a second slave device, simultaneous in time tothe first slave device, may display a video (e.g. “A Box of History,”etc.) being streamed from a master device. In this manner, therefore,audio, text, video, music, and/or any other media content may be madeavailable to one or more devices on the network system.

FIG. 16 shows user interfaces 1600 for distributing and directing mediacontent, in accordance with one embodiment. As an option, the userinterfaces 1600 may be implemented in the context of the details of anyof the foregoing Figures. Of course, however, the user interfaces 1600may be carried out in any desired environment. Further, theaforementioned definitions may equally apply to the description below.

As shown, user interfaces 1600 may include a camera 1602, a masterdevice interface 1606, one or more network connections 1604, a firstslave device interface 1608, and a second slave device interface 1610.

In one embodiment, the camera may be associated with a vehicularassembly system (e.g. integrated into the car, etc.). In otherembodiments, the camera (or any other nearby resource) may beindependent of any other system and may be operated and/or controlled byone or more devices on the network system. As an example, a back upcamera on a car may be used by one or more devices. However, in someembodiments, a back up camera may only be controlled by one device at atime (e.g. with sufficient permissions and/or privileges, etc.).

In other embodiments, a resource may include any type of camera (e.g.webcam, point-and-shoot camera, etc.), a disc player (e.g. Blueray diskplayer, etc.), a media player, and/or any other device which mightprovide some input (e.g. data input, etc.). In a separate embodiment, aresource associated with a device (e.g. gyroscope, accelerometer, etc.)may be used as an input by another device. Of course, however, in someembodiments, a sensor may not be controlled by a device (i.e. a sensormay only provide an output and not allow for manipulation by anotherdevice, etc.).

In one embodiment, a master display interface may include displaying oneor more thumbnail images associated with devices and/or inputs. Forexample, in one embodiment, the master display interface may display athumbnail image of what is being displayed on every device within thenetwork system, as well as display a thumbnail image of any other input(e.g. camera, media player, etc.). In this manner, therefore, the masterdevice may display at a glance a status of all devices and/or inputsassociated with the network system.

In various embodiments, the master device may communicate with one ormore other devices (e.g. slave devices, etc.) on the network system,using any type of network system (e.g. WAN, LAN, WLAN, Wi-Fi, Wi-FiDirect, Bluetooth, etc.).

In one embodiment, the first slave device interface may include theability to view an outdoor camera associated with the network system.Further, in another embodiment, the first slave device may havepermission to request control of the device (e.g. if another masterdevice is not currently using the camera, etc.). In other embodiments,the first slave device may provide the ability to take a snapshot imageof what is being displayed by the camera device, or may select to sharethe live feed of the camera (or of a snapshot, etc.) as desired (e.g.with other users on the network system, send to email recipient, etc.).

In another embodiment, the second slave device interface may include theability to interact with one or more network resources. For example, inone embodiment, a camera device associated with the network system maybe used as an augmented reality input on a drawing app. For example, theinput stream from the camera may provide the background for the app uponwhich the user may interact by drawing images. In one embodiment,because the background may be constantly changing, the images created bythe user may only be displayed for a set number of seconds (e.g. twoseconds, etc.) before fading away. In other embodiments, the camerainput may be used in any other manner to provide an augmented realityexperience for the user of the device. Further still, any resource (e.g.sensors, inputs, etc.) may be used to assist in creating an augmentedreality experience for the user of the device.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. Thus, the breadth and scope of a preferred embodiment shouldnot be limited by any of the above-described exemplary embodiments, butshould be defined only in accordance with the following claims and theirequivalents.

What is claimed is:
 1. A method, comprising: selecting media content tobe streamed; selecting a distribution channel to direct the streaming ofthe media content; and distributing the media content to thedistribution channel.
 2. The method of claim 1, wherein the mediacontent includes one or more video files.
 3. The method of claim 1,wherein the distribution channel includes one or more devices connectedvia the cloud.
 4. The method of claim 1, wherein the distributionchannel includes a network used to display the media content.
 5. Themethod of claim 1, wherein the distribution channel includes a networksystem used to stream the media content.
 6. The method of claim 1,wherein the media content is stored in the cloud.
 7. The method of claim1, wherein the media content is distributed via the distribution channelto one or more mobile devices for display.
 8. The method of claim 1,wherein metadata is associated with the media content.
 9. A computerprogram product embodied on a non-transitory computer readable medium,comprising: code configured to select media content to be streamed; codeconfigured to select a distribution channel to direct the streaming ofthe media content; and code configured to distribute the media contentto the distribution channel.
 10. The computer program product of claim9, wherein the media content includes one or more video files.
 11. Thecomputer program product of claim 9, wherein the distribution channelincludes one or more devices connected via the cloud.
 12. The computerprogram product of claim 9, wherein the distribution channel includes anetwork used to display the media content.
 13. The computer programproduct of claim 9, wherein the distribution channel includes a networksystem used to stream the media content.
 14. The computer programproduct of claim 9, wherein the media content is stored in the cloud.15. The computer program product of claim 9, wherein the media contentis distributed via the distribution channel to one or more mobiledevices for display.
 16. The computer program product of claim 9,wherein metadata is associated with the media content.
 17. A systemcomprising: a memory system; and one or more processors coupled to thememory system and that are each configured to: select media content tobe streamed; select a distribution channel to direct the streaming ofthe media content; and distribute the media content to the distributionchannel.
 18. The system of claim 17, wherein the media content includesone or more video files.
 19. The system of claim 17, wherein thedistribution channel includes one or more devices connected via thecloud.
 20. The system of claim 17, wherein the distribution channelincludes a network used to display the media content.